package server.business.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import server.business.pojo.BloodTransfer;
import server.business.pojo.BloodTransferInformation;

import java.util.List;

/**
 * @author Galaxy
 * @description 针对表【blood_transfer(调血信息表)】的数据库操作Service
 * @createDate 2022-08-01 13:22:59
 */

public interface BloodTransferService extends IService<BloodTransfer> {

    List<BloodTransfer> getAll(BloodTransfer bloodTransfer);
    List<BloodTransfer> getAll();

    IPage<BloodTransfer> getPage(int currentPage, int pageSize, BloodTransfer bloodTransfer);

    /**
     * 根据id修改调血申请状态
     */
    //审核通过
    void setStateByNumber(BloodTransfer bloodTransfer);
    //审核驳回
    void setStateByNumber1(BloodTransfer bloodTransfer);

    void addApplication(BloodTransfer bloodTransfer);

    void deleteApplication(BloodTransfer bloodTransfer);

    /**
     * 为调血申请分配血液
     * @param string
     * @return
     */
    //(old)血液规格没有使用字典时为调血申请分配血液，后弃用
    List<BloodTransferInformation> distribute(String string);
    //为调血申请分配血液（未对血液规格进行拆分分配）
    List<BloodTransferInformation> distribute1(String string);

    //验证调血申请是否存在并返回血液信息
    Boolean isExist(String id);
    List<BloodTransferInformation> getAll(String id);

    //根据申请单号获取医院名称
    String getHospitalName(String id);
}
